package com.kly.order.db.dao;

import com.fqgj.common.api.Page;
import com.fqgj.common.base.BaseMapper;
import com.kly.order.db.entity.ProductDiscountConfigEntity;

import java.util.List;

/**
 * User: user
 * Date: 2024-01-25
 * Time: 14:46:14.014
 */

public interface ProductDiscountConfigDao extends BaseMapper<ProductDiscountConfigEntity> {

    /**
     * 根据促销类型查询促销数据量
     *
     * @param promotionType
     * @param appCode
     * @return
     */
    ProductDiscountConfigEntity productDiscountCountByPromotionType(Integer promotionType, String appCode, Integer memberType);

    /**
     * 读取类别下所有的商品
     * @param promotionType
     * @param appCode
     * @return
     */
    List<ProductDiscountConfigEntity> productDiscountByPromotionType(Integer promotionType, String appCode);

    /**
     * 折扣类型: 1-折扣促销 2-用户拉新 3-用户召回 99-All
     * 会员类型: 1-周会员折扣 2-月会员折扣 3-季会员折扣 99-All
     */
    List<ProductDiscountConfigEntity> listDiscount(Integer promotionType, Integer memberType, String appCode, Page page);

    Integer getDiscountCnt(Integer promotionType, Integer memberType, String appCode);

    /**
     * 根据id查询配置记录
     */
    ProductDiscountConfigEntity getDiscountById(Integer id);

    /**
     * 删除配置
     */
    int removeDiscount(Integer id);

    /**
     * 添加
     */
    int addDiscount(ProductDiscountConfigEntity entity);
}